﻿using System.Collections.Generic;

namespace SecurityModule.Parsers
{
    /// <summary>
    /// Exposes methods for parsing address and tax files provided by IDOR.
    /// </summary>
    public interface IParser
    {
        /// <summary>
        /// When implemeted, returns a value indicating if the parser can process the provided data.
        /// </summary>
        /// <param name="data">Data to be processed as plain text.</param>
        /// <returns>True if the parser can process file, false otherwise.</returns>
        bool CanParse(string data);
        /// <summary>
        /// When implemeted, returns a list of <see cref="ParseResultItem"/> after processing the provided data.
        /// </summary>
        /// <param name="data">Data to be processed as plain text.</param>
        /// <returns>A list of <see cref="ParseResultItem"/> after processing the provided data.</returns>
        List<ParseResultItem> Parse(string data);
    }
}
